package com.rfid.jni;

import com.rfid.RFIDCallException;

/**
 *  status 说明
 *   
 * 	0	操作成功，读出的数据有效。<br>
	1	0~2块都没读出来，可能刷卡太块。但卡序列号已被读出来。<br>
	2	第0块已被读出，但1~2块读取失败。卡序列号已被读出来。<br>
	3	第0、1块已被读出，但2块读取失败。卡序列号已被读出来。<br>
	8	寻卡错误，根本就没有卡在感应区，*serial无效。<br>
	9	有多张卡在感应区，寻卡过程中防冲突失败，*serial无效。<br>
	10	该卡可能已被休眠，无法选中，但卡序列号已被读出，*serial数组中的数据有效。<br>
	11	密码装载失败。<br>
	12	密码认证失败。<br>
	21	本函数需要引用的动态库ICUSB.DLL不在当前目录下。<br>
	22	动态库或驱动程序异常，解决方法是退出程序，拔出IC卡读写器，重装驱动程序再插上IC卡读写器重试，或者重新拷贝动态库OUR_MIFARE.dll到正确的位置。<br>
	23	无法连接设备<br>
	24	操作超时。可能是电脑中毒导致USB帧传递调度缓慢，或者是IC卡读写器有问题，解决方法是重启电脑或重新拔插IC卡读写器。<br>
	27	USB传输不稳定导致传输的字符不全。不需理会这个错误，因为基本上是不会出现这个错误的。<br>
	28	USB传输不稳定导致CRC校验错。不需理会这个错误，因为基本上是不会出现这个错误的。<br>
	..  其他	未知错误<br>
	
 * @author zzm
 *
 */
public class RFIDStatusException extends RFIDCallException {

	private static final long serialVersionUID = 6340428879113143971L;
	
	private int status;

	public RFIDStatusException(String message) {
		super(message);
		try {
			this.status = Integer.parseInt(message);
		} catch(NumberFormatException e) {
			this.status = -1;
		}
	}


	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	

	
}
